using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using ThridGroup.ERP.DTO.ShiftSchedulingManagementDto;
using Volo.Abp.Application.Services;

namespace ThridGroup.ERP.ProductionSystem
{
    /// <summary>
    /// 班组服务接口
    /// </summary>
    public interface ITeamServices : IApplicationService
    {
        /// <summary>
        /// 添加班组
        /// </summary>
        /// <param name="dto">班组信息</param>
        /// <returns></returns>
        Task<int> CreateTeam(TeanListDto dto);

        /// <summary>
        /// 查询班组（分页/条件）
        /// </summary>
        /// <param name="dto">查询条件</param>
        /// <returns></returns>
        Task<List<TeanListDto>> QueryTeam(GetTeamDto dto);

        /// <summary>
        /// 修改班组
        /// </summary>
        /// <param name="dto">班组信息</param>
        /// <returns></returns>
        Task<int> UpdateTeam(TeanListDto dto);

        /// <summary>
        /// 批量删除班组
        /// </summary>
        /// <param name="ids">班组ID列表</param>
        /// <returns></returns>
        Task BatchDeleteTeam(List<int> ids);

        /// <summary>
        /// 根据ID获取班组信息
        /// </summary>
        /// <param name="id">班组ID</param>
        /// <returns></returns>
        Task<TeanListDto> GetTeamById(int id);
    }
} 